#ifndef GAMECONTROLLER_H
#define GAMECONTROLLER_H

#include <QObject>

class GameDataModel;
class Card;

/** Обеспечивает логику игры. */
class GameController : public QObject{
	Q_OBJECT
public:
	explicit GameController(GameDataModel * gameData, QObject *parent = 0);
	
	/** Откроет карту с индкесом i, проследив, что другие закрыты*/
	Q_INVOKABLE void openCard(int i);
signals:
	
public slots:
private:
	GameDataModel * m_gameData;
	
	QList<Card*> m_openedCards;
	
	
	/** Проверить открытые карты на совпадение.*/
	bool openedCardsIsEquals();
};

#endif // GAMECONTROLLER_H
